iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 12
0
自我挑戰組

前端工程師的30份套餐系列 第 12

Day12 - Object.keys()、Object.values()

  • 分享至 

  • xImage
  •  

Object.keys()

Object.keys()方法會回傳一個排序結果的陣列,也就是說,會將參數物件本身的key透過陣列回傳。
例如:

let array = ['a','b','c'];
console.log(Object.keys(array));  //['0','1','2']

let obj = {1:'a',2:'b',3:'c'};
console.log(Object.keys(obj));  //['1','2','3']

而在 ES5 中,如果這個方法的參數不是一個標準物件(例如原始型別),將會產生 TypeError錯誤。而在 ES6,非物件的參數會強制轉換成物件。

Object.keys("foo");
// TypeError: "foo" is not an object(ES5)

Object.keys("foo");
// ["0", "1", "2"](ES6)

Object.values()

Object.values方法回傳一個陣列,同樣地,return參數物件本身的鍵值(value)。

let obj = {name: "hotdog",num:5};
Object.values(obj);  //['hotdog','5']

如果Object.values方法的參數是字串,將會回傳字串各個字組成的陣列。

Object.values('food');
//['f','o','o','d']

如果參數是布林值或者數字,則會回傳空陣列

Object.values(true) // []
Object.values(5) // []

上一篇
Day11-indexOf()、concat()、slice()方法
下一篇
Day13-ES6物件(ㄧ)
系列文
前端工程師的30份套餐30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言